Using Allegro
allegro_init
allegro_exit
allegro_id
allegro_error
os_type
windows_version
windows_sub_version
check_cpu
cpu_vendor
cpu_family
cpu_model
cpu_fpu
cpu_mmx
cpu_3dnow
cpu_cpuid
Configuration routines
set_config_file
set_config_data
override_config_file
override_config_data
push_config_state
pop_config_state
hook_config_section
config_is_hooked
get_config_string
get_config_int
get_config_hex
get_config_float
get_config_id
get_config_argv
get_config_text
set_config_string
set_config_int
set_config_hex
set_config_float
set_config_id
Mouse routines
install_mouse
remove_mouse
mouse_x
mouse_y
mouse_b
mouse_pos
show_mouse
scare_mouse
unscare_mouse
freeze_mouse_flag
position_mouse
set_mouse_range
set_mouse_speed
set_mouse_sprite
set_mouse_sprite_focus
get_mouse_mickeys
mouse_callback
Timer routines
install_timer
remove_timer
install_int
install_int_ex
remove_int
i_love_bill
timer_simulate_retrace
retrace_count
retrace_proc
rest
rest_callback
Keyboard routines
install_keyboard
remove_keyboard
install_keyboard_hooks
key
key_shifts
keypressed
readkey
simulate_keypress
keyboard_callback
keyboard_lowlevel_callback
set_leds
clear_keybuf
three_finger_flag
key_led_flag
switch_standard_kb_key
switch_standard_kb_flags
switch_custom_kb_key
switch_custom_kb_flags
set_standard_keyboard
set_custom_keyboard
Joystick routines
install_joystick
remove_joystick
poll_joystick
num_joysticks
joy
calibrate_joystick_name
calibrate_joystick
save_joystick_data
load_joystick_data
Graphics modes
set_color_depth
set_gfx_mode
gfx_capabilities
scroll_screen
request_scroll
poll_scroll
show_video_bitmap
request_video_bitmap
request_modex_scroll
poll_modex_scroll
split_modex_screen
Bitmap objects
screen
create_bitmap
create_bitmap_ex
create_sub_bitmap
create_video_bitmap
destroy_bitmap
bitmap_color_depth
bitmap_mask_color
is_same_bitmap
is_linear_bitmap
is_planar_bitmap
is_memory_bitmap
is_screen_bitmap
is_sub_bitmap
set_clip
Loading image files
load_bitmap
load_bmp
load_lbm
load_pcx
load_tga
save_bitmap
save_bmp
save_pcx
save_tga
register_bitmap_file_type
set_color_conversion
Palette routines
vsync
set_color
_set_color
set_palette
set_palette_range
get_color
get_palette
get_palette_range
fade_interpolate
fade_from_range
fade_in_range
fade_out_range
fade_from
fade_in
fade_out
select_palette
unselect_palette
generate_332_palette
generate_optimized_palette
black_palette
desktop_palette
Truecolor pixel formats
makecol8
makecol15
makecol16
makecol24
makecol32
makecol
makecol_depth
makecol15_dither
makecol16_dither
getr8
getg8
getb8
getr15
getg15
getb15
getr16
getg16
getb16
getr24
getg24
getb24
getr32
getg32
getb32
getr
getg
getb
getr_depth
getg_depth
getb_depth
palette_color
MASK_COLOR_8
MASK_COLOR_15
MASK_COLOR_16
MASK_COLOR_24
MASK_COLOR_32
Drawing primitives
putpixel
_putpixel
getpixel
_getpixel
vline
hline
do_line
line
triangle
polygon
rect
rectfill
do_circle
circle
circlefill
do_ellipse
ellipse
ellipsefill
do_arc
arc
calc_spline
spline
floodfill
Blitting and sprites
clear
clear_to_color
blit
masked_blit
stretch_blit
draw_sprite
draw_sprite_v_flip
draw_sprite_h_flip
draw_sprite_vh_flip
draw_trans_sprite
draw_lit_sprite
draw_gouraud_sprite
draw_character
rotate_sprite
rotate_scaled_sprite
stretch_sprite
RLE sprites
get_rle_sprite
destroy_rle_sprite
draw_rle_sprite
draw_trans_rle_sprite
draw_lit_rle_sprite
Compiled sprites
get_compiled_sprite
destroy_compiled_sprite
draw_compiled_sprite
Text output
font
text_mode
textout
textout_centre
textout_justify
textprintf
textprintf_centre
text_length
text_height
destroy_font
Polygon rendering
polygon3d
polygon3d_f
triangle3d
triangle3d_f
quad3d
quad3d_f
clip3d_f
Transparency and patterned drawing
drawing_mode
xor_mode
solid_mode
color_map
create_light_table
create_trans_table
create_color_table
set_trans_blender
set_blender_mode
Converting between color formats
bestfit_color
rgb_map
create_rgb_table
hsv_to_rgb
rgb_to_hsv
Direct access to video memory
FLIC routines
play_fli
play_memory_fli
open_fli
open_memory_fli
close_fli
next_fli_frame
fli_bitmap
fli_palette
fli_bmp_dirty_from
fli_bmp_dirty_to
fli_pal_dirty_from
fli_pal_dirty_to
reset_fli_variables
fli_frame
fli_timer
Sound init routines
detect_digi_driver
detect_midi_driver
reserve_voices
install_sound
remove_sound
set_volume
Digital sample routines
load_sample
load_wav
load_voc
create_sample
destroy_sample
play_sample
adjust_sample
stop_sample
allocate_voice
deallocate_voice
reallocate_voice
release_voice
voice_start
voice_stop
voice_set_priority
voice_check
voice_get_position
voice_set_position
voice_set_playmode
voice_get_volume
voice_set_volume
voice_ramp_volume
voice_stop_volumeramp
voice_get_frequency
voice_set_frequency
voice_sweep_frequency
voice_stop_frequency_sweep
voice_get_pan
voice_set_pan
voice_sweep_pan
voice_stop_pan_sweep
voice_set_echo
voice_set_tremolo
voice_set_vibrato
MIDI music routines
load_midi
destroy_midi
play_midi
play_looped_midi
stop_midi
midi_pause
midi_resume
midi_seek
midi_out
load_midi_patches
midi_pos
midi_loop_start
midi_loop_end
midi_msg_callback
midi_meta_callback
midi_sysex_callback
load_ibk
Audio stream routines
play_audio_stream
stop_audio_stream
get_audio_stream_buffer
free_audio_stream_buffer
Recording routines
install_sound_input
remove_sound_input
get_sound_input_cap_bits
get_sound_input_cap_stereo
get_sound_input_cap_rate
get_sound_input_cap_parm
set_sound_input_source
start_sound_input
stop_sound_input
read_sound_input
digi_recorder
midi_recorder
File and compression routines
fix_filename_case
fix_filename_slashes
fix_filename_path
replace_filename
replace_extension
append_filename
get_filename
get_extension
put_backslash
file_exists
exists
file_size
file_time
delete_file
for_each_file
packfile_password
pack_fopen
pack_fclose
pack_fseek
pack_feof
pack_ferror
pack_getc
pack_putc
pack_igetw
pack_igetl
pack_iputw
pack_iputl
pack_mgetw
pack_mgetl
pack_mputw
pack_mputl
pack_fread
pack_fwrite
pack_fgets
pack_fputs
pack_fopen_chunk
pack_fclose_chunk
Datafile routines
load_datafile
unload_datafile
load_datafile_object
unload_datafile_object
get_datafile_property
register_datafile_object
fixup_datafile
Fixed point math routines
itofix
fixtoi
ftofix
fixtof
fmul
fdiv
fadd
fsub
fsin
fcos
ftan
fasin
facos
fatan
fatan2
fsqrt
3D math routines
identity_matrix
identity_matrix_f
get_translation_matrix
get_translation_matrix_f
get_scaling_matrix
get_scaling_matrix_f
get_x_rotate_matrix
get_x_rotate_matrix_f
get_y_rotate_matrix
get_y_rotate_matrix_f
get_z_rotate_matrix
get_z_rotate_matrix_f
get_rotation_matrix
get_rotation_matrix_f
get_align_matrix
get_align_matrix_f
get_vector_rotation_matrix
get_vector_rotation_matrix_f
get_transformation_matrix
get_transformation_matrix_f
get_camera_matrix
get_camera_matrix_f
qtranslate_matrix
qtranslate_matrix_f
qscale_matrix
qscale_matrix_f
matrix_mul
matrix_mul_f
vector_length
vector_length_f
normalize_vector
normalize_vector_f
dot_product
dot_product_f
cross_product
cross_product_f
polygon_z_normal
polygon_z_normal_f
apply_matrix
apply_matrix_f
set_projection_viewport
persp_project
persp_project_f
GUI routines
d_clear_proc
d_box_proc
d_shadow_box_proc
d_bitmap_proc
d_text_proc
d_ctext_proc
d_button_proc
d_check_proc
d_radio_proc
d_icon_proc
d_keyboard_proc
d_edit_proc
d_list_proc
d_textbox_proc
d_slider_proc
d_menu_proc
gui_mouse_focus
gui_fg_color
gui_bg_color
gui_mg_color
gui_font_baseline
gui_mouse_x
gui_mouse_y
gui_mouse_b
gui_textout
gui_strlen
centre_dialog
set_dialog_color
find_dialog_focus
dialog_message
broadcast_dialog_message
do_dialog
popup_dialog
init_dialog
update_dialog
shutdown_dialog
active_dialog
do_menu
active_menu
alert
alert3
file_select
gfx_mode_select
gfx_mode_select_ex
Reducing your executable size
Debugging
Conclusion
Change list
Frequently Asked Questions
What to do when your program doesn't work
Special thanks - The Hall of Fame